הקדמה... ייעודו של הספר...

Σχετικά έγγραφα
פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

חורף תש''ע פתרון בחינה סופית מועד א'

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

תרגול פעולות מומצאות 3

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

סיכום- בעיות מינימוםמקסימום - שאלון 806

ניהול תמיכה מערכות שלבים: DFfactor=a-1 DFt=an-1 DFeror=a(n-1) (סכום _ הנתונים ( (מספר _ חזרות ( (מספר _ רמות ( (סכום _ ריבועי _ כל _ הנתונים (

קורס מטלב לביולוגים שיעור מס' 1: סביבת עבודה

Vcc. Bead uF 0.1uF 0.1uF

3-9 - a < x < a, a < x < a

משפטי בקרה ולולאות שעור מס. 3 כל הזכויות שמורות דר' דרור טובי המרכז האוניברסיטאי אריאל

פרק - 8 יחידות זיכרון ) Flop Flip דלגלג (

התפלגות χ: Analyze. Non parametric test

ל הזכויות שמורות לדפנה וסטרייך

תשובות מלאות לבחינת הבגרות במתמטיקה מועד ג' תשע"ד, מיום 0/8/0610 שאלונים: 315, מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן

תרגול מס' 6 פתרון מערכת משוואות ליניארית

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

כלליים זמן: S מחסנית, top(s) ראש המחסנית. (Depth First Search) For each unmarked DFS(v) / BFS(v) רקורסיבי. אלגוריתם :BFS

EMC by Design Proprietary

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

Logic and Set Theory for Comp. Sci.

Domain Relational Calculus דוגמאות. {<bn> dn(<dn, bn> likes dn = Yossi )}

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

... תינאילוב הרבגלא - 1 קרפ

מבני בקרה ב C שעור מס. 2 דר' דרור טובי, המרכז האוניברסיטאי אריאל בשומרון.

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

קבל מורכב משני מוליכים, אשר אינם במגע אחד עם השני, בכל צורה שהיא. כאשר קבל טעון, על כל "לוח" יש את אותה כמות מטען, אך הסימנים הם הפוכים.

ניתן לקבל אוטומט עבור השפה המבוקשת ע "י שימוששאלה 6 בטכניקתשפה המכפלה שנייה כדי לבנות אוטומט לשפת החיתוך של שתי השפות:

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

-107- גיאומטריה זוויות מבוא מטרתנו בפרק זה היא לחזור על המושגים שנלמדו ולהעמיק את הלימוד בנושא זה.

נספח לפרק 10 דוגמא לאנליזה של מכונת מצבים ננסה להבין את פעולתה של מ כונת המצבים הבאה : Input X. q 0 q 1. output D FF-0 D FF-1. clk

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

gcd 24,15 = 3 3 =

מבני נתונים מדעי המחשב שאלון: מועד ב' תשע"ו מדעי המחשב פתרון בחינת הבגרות. Java שאלה 1. blog.csit.org.

שאלה 1 V AB פתרון AB 30 R3 20 R

Push button -led 1 דומע לאגי ונדלוט וניאודרא סרוק

Charles Augustin COULOMB ( ) קולון חוק = K F E המרחק סטט-קולון.

אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

סיכום חקירת משוואות מהמעלה הראשונה ומהמעלה השנייה פרק זה הינו חלק מסיכום כולל לשאלון 005 שנכתב על-ידי מאיר בכור

רשימת בעיות בסיבוכיות

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

שיעור מס' 1: סביבת עבודה

מבני נתונים ואלגוריתמים תרגול #11

סדרות - תרגילים הכנה לבגרות 5 יח"ל

תכנות בשפת C פרק שלישי: בקרת זרימה שייקה בילו יועץ ומרצה בכיר למדעי המחשב וטכנולוגית מידע מומחה למערכות מידע חינוכיות, אקדמיות ומנהליות

(ספר לימוד שאלון )

תרגיל 7 פונקציות טריגונומטריות הערות

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

מתמטיקה בדידה תרגול מס' 12

מהי המשמעות של IEEE 1588 עבור תכנון מערכת ה- T&M הבאה שלך?

{ : Halts on every input}

dspace זווית - Y מחשב מנוע ואנקודר כרטיס ו- driver

מתמטיקה בדידה תרגול מס' 2

מתמטיקה בדידה תרגול מס' 5

רשימת משפטים והגדרות

פרק 6: מסכמים, בוררים, מפענחים

מודלים חישוביים תרגולמס 7

(להנדסאי מכונות) הוראות לנבחן פרק שני: בקרת תהליכים ומכשור לבקרה ולאלקטרוניקה תעשייתית 80 נקודות

לדוגמא : dy dx. xdx = x. cos 1. cos. x dx 2. dx = 2xdx לסיכום: 5 sin 5 1 = + ( ) הוכחה: [ ] ( ) ( )

TECHNION Israel Institute of Technology, Faculty of Mechanical Engineering מבוא לבקרה (034040) גליון תרגילי בית מס 5 ציור 1: דיאגרמת הבלוקים

normally open (no) normally closed (nc) depletion mode depletion and enhancement mode enhancement mode n-type p-type n-type p-type n-type p-type

תרגול 8: מטלאב לולאות

"קשר-חם" : לקידום שיפור וריענון החינוך המתמטי

f ( x, y) 1 5y axy x xy ye dxdy לדוגמה: axy + + = a ay e 3 2 a e a y ( ) במישור. xy ואז dxdy למישור.xy שבסיסם dxdy וגבהם y) f( x, איור 25.

תוכן העניינים: 4.1 אופן התקנת בקר 4.2. חיווט בקר

Nir Adar

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ב (2012) דפי עזר

דיאגמת פאזת ברזל פחמן

אלגברה ליניארית 1 א' פתרון 2

{ } { } { A חוקי דה-מורגן: הגדרה הסתברות מותנית P P P. נוסחת בייס ) :(Bayes P P נוסחת ההסתברות הכוללת:

מצולעים מצולעהוא צורה דו ממדית,עשויה קו"שבור"סגור. לדוגמה: משולש, מרובע, מחומש, משושה וכו'. לדוגמה:בסרטוט שלפappleיכם EC אלכסוןבמצולע.

מודלים חישוביים תרגולמס 5

מבני נתונים מבחן מועד א' סמסטר חורף תשס"ו

כתיבה ייעוץ אקדמי איורים הפקה המרכז הישראלי לחינוך מדעי-טכנולוגי חינוכית (מטח) מקט מהדורת ניסוי ע"ש עמוס דה-שליט

תוכן הפרק: ,best case, average case דוגמאות 1. זמן - נמדד באמצעות מס' פעולות סיבוכיות, דוגמאות, שיפור בפקטור קבוע האלגוריתם. וגודלם. איטרטיביים. לקלט.

אוניברסיטת בן-גוריון בנגב הפקולטה למדעי ההנדסה. DC Motor speed Control בקרת מהירות

קיום ויחידות פתרונות למשוואות דיפרנציאליות

מדריך לטכנאי PC מהדורה 4

הגדרה: מצבים k -בני-הפרדה

גבול ורציפות של פונקציה סקלרית שאלות נוספות

תאריך עדכון אחרון: 27 בפברואר ניתוח לשיעורין analysis) (amortized הוא טכניקה לניתוח זמן ריצה לסדרת פעולות, אשר מאפשר קבלת

DevOps Advance - 40 hours

מערכות חשמל ג' שתי יחידות לימוד )השלמה לחמש יחידות לימוד( )כיתה י"א(

הרצאה 3 קומבינטוריקה נוסחת ניוטון משפט מולטינומי. + t עבור ( ) + t

השאלות..h(k) = k mod m

תרגיל 13 משפטי רול ולגראנז הערות

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

סימני התחלקות ב 3, ב 6 וב 9

הרצאה. α α פלוני, וכדומה. הזוויות α ל- β שווה ל-

חלק 1 כלומר, פונקציה. האוטומט. ) אותיות, אלפבית, א"ב (.

יווקיינ לש תוביציה ןוירטירק

x = r m r f y = r i r f

דינמיקה כוחות. N = kg m s 2 מתאפסת.

אינפי - 1 תרגול בינואר 2012

Transcript:

ìåìî éù ãåîéìã øôññ íéø áí åø éîî íéè éåøôìí 8051 úçôùîîî éìáîñàé úôùáá 052 ÿ 2671210 email: elmtv@netvision.net.il (CJKP KNB) [ZG[ \BXGF web: http://shoresh.sfarim.net

# ZCIPN \GZGP[ NT \GKGMHF NM ZGBN BKXGPFP GB ZCIPFP ZG[KB BNN FH ZVSP YGZSN GB ONXN QKB YGIF NT FZKCT ORKF ZG[KB BNN FH ZVSP FYKZS GB OGNKX (QDGF BN OD FHG)

11 12 13 14 20 21 22 23 24 25 26 26 28 29 31 32 33 34 34 35 36 37 38 39 40 40 41 42 43 43 44 47 48 50 51 52 54 56 58 תוכן עניינים הקדמה... טכנולוגיית הבקרים ממשפחת 8051... ייעודו של הספר... מבנה הספר והמלצות ללומד... פרק 1: מבוא... מבוא למיקרו-בקרים ממשפחת 8051... מבנה של אריזת DIP של מיקרו-בקר 8051... פירוט הדקי אריזת DIP של מיקרו-בקר 8051... מבנה פנימי של מיקרו-בקר ממשפחת 8051... השוואה בין סוגי מיקרו-בקרים ממשפחת 8051... חיבור מקור מתח למיקרו-בקר... חיבור מעגל איפוס Reset למיקרו-בקר... חיבור מעגל אקטיבי ליצירת אות שעון... יחידת עיבוד מרכזית...CPU מבנה הפורט של הרכיב... קווי ה- Bus של המיקרו-בקר... חיבור בין מיקרו-בקר 8051 לרכיב זיכרון חיצוני מסוג...ROM חיבור בין מיקרו-בקר 8051 לרכיב זיכרון חיצוני מסוג...RAM המקטעים (segments) וסוגם... כלי פיתוח לסביבת עבודה 8051... מבוא למיקרו-בקר ממשפחת 89C51... פירוט הדקי אריזת DIP של מיקרו-בקר 89C51... מבנה של אריזת DIP של מיקרו-בקר 89C51... מבנה הפנימי של מיקרו-בקר 89C51... מבנה הפנימי של היחידות CPU ו-...ALU הסבר על הרגיסטרים... הסבר על הדגלים... הסבר על רגיסטרים כלליים ובנקים... הסבר על עמודת הדגלים... הסבר כיצד ניתן לכתוב הערות בתוכנת... כתיבה וקריאה מהפורט... פרק 2: הכרת מערכת הפיתוח..µvision כיצד בנויה תכנית בשפת אסמבלי של 8051... מבוא לסימולציה וקומפילציה... הפעלת תוכנת...µVision פתיחת פרוייקט והוספת קובץ לפרוייקט... כתיבת תוכנית עם עורך טכסטים... קובץ לפרוייקט... ביצוע קומפילציה לפרוייקט... תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי 3

65 66 74 75 76 77 78 81 84 85 87 88 89 90 90 92 94 95 96 97 99 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 117 118 122 122 יצירת קובץ HEX לצריבה... הרצת סימולציה לפרוייקט... פרק 3: פקודות בסיסיות של המיקרו-בקר... פקודות MOV ו-...SETB פקודת... ADD פקודת...ADDC פקודות CLR ו-...SUBB פקודות INC ו- DEC... פקודת...MUL פקודת...DIV הנחיה...EQU תרגול... פרק 4: פקודות קפיצה ולולאות... פקודת קפיצה...JMP כללים לכתיבת תווית...Lable לולאה אינסופית... פקודות קפיצה המושפעות מרגיסטר A... פקודת קפיצה... JZ פקודת קפיצה... JNZ פקודות JC ו-...JNC פקודת השוואה...CJNE פקודת...DJNZ טבלת סיכום פקודות קפיצה עם תנאי... תרגול... פרק 5: שימוש בפקודות לוגיות ועבודה עם סיביות... פקודות לוגיות... פקודה... ANL פקודה... ORL פקודה... XRL פקודה... CPL פקודה... SWAP פקודה... DA פקודה...RL פקודה... RLC פקודה... RR פקודה... RRC טבלת סיכום פקודות לוגיות... עבודה עם Bank שונים... פניה לסיביות (bits)... פקודות השמה למשתנים מסוג...bit 4 תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי

123 125 125 126 142 152 153 156 157 158 159 162 164 166 168 170 170 171 171 172 173 177 180 181 183 185 185 186 190 190 190 191 194 196 200 201 202 203 203 204 204 פקודותJNB,... JBC,JB פקודת... NOP יצירת השהיות בעזרת פקודות... הפעלת Logic Analyzer פנימי שמובנה בכלי הפיתוח... הכרת תוכנת צריבה Flash Magic של חברת... Philips ריכוז פקודות שניתן לבצע על סיביות... תרגול... פרק 6: זיכרונות... מבנה הזיכרון במיקרו-בקר... מבנה זיכרון ה- ROM בבקר... הגדרת קבוע בזיכרון... ROM מערכים בזיכרון... ROM רגיסטר... DPTR פקודת... MOVC מחרוזות והגדרתם בזיכרון ה-... ROM הגדרת משתנים בזיכרון ה-... RAM טבלת תחום הכתובות ואפשרות הגישה אל יחידות זיכרון ה-... Ram זיכרון... DATA מבנה זיכרון ה-... DATA הגדרת משתנים בזיכרון...DATA מיעון ישיר... מיעון עקיף... הגדרה של משתנה מסוג BIT בזיכרון... RAM פקודות לאתחול משתנים מסוג... bit פקודות קפיצה המושפעות ממשתנים מסוג... bit זיכרון... IDATA מבנה זיכרון... IDATA הגדרת משתנים בזיכרון... IDATA זיכרון... XDATA מבנה זיכרון... XDATA הגדרת משתנים בזיכרון... XDATA פקודת...MOVX פקודת... XCH מיון בועות... סיכום פעולות פניה לזיכרון הבקר... תרגול... פרק 7: מחסנית ופרוצדורות... מחסנית... הגדרת מחסנית... פקודת... PUSH פקודת... POP תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי 5

214 215 216 220 222 224 233 234 235 236 239 242 243 251 252 253 254 255 258 259 273 282 284 285 286 287 288 290 291 293 294 295 296 296 297 298 299 300 300 301 302 308 פרוצדורות... קריאה לפרוצדורה... פקודת... RET כתיבת פרוצדורות בקבצים נפרדים... שימוש במשתנים אשר מוגדרים בפונקציות השמורות בקובץ אחר... הוספת קבצים לפרוייקט... תרגול... פרק 8: חיבור מתגים למיקרו-בקר ומניעת ריטוטים... צורות חיבור אפשריות של מתג למערכת ספרתית... מניעת ריטוטים בחומרה באמצעות... Latch מניעת ריטוטים בחומרה באמצעות... Scmitt-Trigger מימוש מערכת de-bounce בתוכנה... דוגמאות לתוכניות המשמשות למניעת ריטוטים... תרגיל מסכם... פרק 9: כתיבה לתצוגת... LCD מבוא לתצוגת... LCD מבנה התצוגה... פירוט הדקי רכיב אריזת התצוגה... פקודות בקרה של התצוגה... הסבר על הפונקציות הסטנדרטיות לתפעול התצוגה... קוד הפונקציות... תוכנית דוגמא לכתיבת הודעה על גבי תצוגת ה-... LCD תוכנית דוגמא לכתיבת הודעה תו אחר תו... תוכנית דוגמא להופעת הסמן... תוכנית דוגמא להבהוב הסמן... תוכנית דוגמא להפעלה וכיבוי המסך... תוכנית דוגמא להעברת הסמן לתחילת התצוגה... תוכנית דוגמא לניקוי מסך התצוגה... תוכנית דוגמא למחיקת תו אחד... תוכנית דוגמא לכתיבת הודעה החל משורה שנייה... תוכנית דוגמא להזזת סמן התצוגה אחורה... תוכנית דוגמא להזזת סמן התצוגה קדימה... תוכנית דוגמא להורדת הסמן לשורה שנייה תוך שמירה על מיקום הסמן... תוכנית דוגמא להעברת הסמן לשורה ראשונה תוך שמירה על מיקום הסמן.. טבלתסיכום פונקציות התצוגה... תרגול... פרק 10: חיבור לוח מקשים 4X4 למיקרו-בקר... מבוא ללוח מקשים... מבנה לוח המקשים... סריקת לוח מקשים בשיטת אפס רץ... הסבר על הפרוצדורה לסריקת מקשים... פרוצדורה לסריקת לוח המקשים... 6 תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי

310 311 315 316 321 329 330 331 332 333 333 334 335 336 337 338 339 342 343 344 346 346 349 350 350 351 358 359 360 360 360 361 362 362 365 366 367 369 375 377 386 כתיבת מספרים שנקלטים מלוח המקשים והצגתם בתצוגה... סימולציה לקובץ קליטת מספרים מלוח מקשים... דוגמא לשימוש במקש D למחיקת תווים מהתצוגה... תוכנית דוגמא לניהול הודעות בעזרת לוח מקשים... תוכנית מחשבון המבצעת פעולת חיבור בעזרת לוח מקשים... תרגול... פרק 11: עבודה עם פסיקות... מבוא לפסיקות... ההבדלים בין שיטת הסריקה לשיטת הפסיקה... טבלת מקורות פסיקה... רגיסטר... IE רגיסטר... TCON כתיבת שגרת פסיקה... פקודת... RETI דוגמא לתוכניות המשתמשות בפסיקה חיצונית מספר... 0 הרצת סימולציה לתוכנית אשר מחוברת לפסיקה חיצונית... 0 חיבור פסיקה חיצונית מספר 0 ללוח התרגול... דוגמא לתוכניות המשתמשות בפסיקה חיצונית מספר 1... הרצת סימולציה לתוכנית אשר מחוברת לפסיקה חיצונית 1... חיבור פסיקה חיצונית מספר 1 ללוח התרגול... דוגמא לתוכנית המשתמשת בשתי הפסיקות בפרוייקט... דוגמא לתוכנית ששגרת הפסיקה כתובה בקובץ נפרד... סדר עדיפויות של קבלת פסיקה... שינוי סדר קבלת בקשות הפסיקה... רגיסטר... IP דוגמאות לתוכניות המשנות את סדר קבלת הפסיקות... תרגול... פרק 12: הפעלת מונים ברי תכנות... מבוא למונה... רגיסטר טיימר... 0 רגיסטר טיימר... 1 רגיסטר... TMOD אופן העבודה של המונים... הסבר מבנה המונים... רגיסטר...TCON חישוב זמנים ליצירת השהיה במונה... דוגמא ליצירת השהיה... בדיקת השהיה בזמן הרצת הסימולציה בחלון... logic Analyzer שגרת פסיקה של מונים... דוגמאות לתוכניות המשתמשות בשגרת פסיקה של מונה... תרגול... תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי 7

387 388 389 391 393 394 395 397 397 401 403 404 407 409 411 413 414 417 422 425 427 430 441 442 443 447 451 445 460 465 פרק 13: עבודה עם תקשורת טורית והתחברות למחשב... PC מבוא לתקשורת טורית... תקן... RS232 המשדר ומבנה התשדורת הטורית של... UART מידע חשמלי ופיסי נוסף על... RS232 סכימת החיבור של רכיב... MAX232 רגיסטר... SCON רגיסטר... SBUF דוגמא לשליחת תו בתקשורת טורית... דוגמא לשליחת הודעה בתקשורת טורית... דוגמא לשליחת תו בתקשורת טורית על ידי שימוש בפסיקה... דוגמא לשליחת הודעה בתקשורת טורית על-ידי פסיקה... דוגמא לקבלת מידע בתקשורת טורית... דוגמא לקבלת מידע בתקשורת טורית על ידי שימוש בפסיקה... בדיקת המחשב והכבל המוצלב באמצעות... LoopBack מבוא להפעלת Terminal (מסוף)... פעולות בסיסיות שתכניות Terminal מבצעות... יצירת תקשורת טורית לבדיקת המערכת באמצעות התכנית... COMSH יצירת תקשורת טורית לבדיקת המערכת באמצעות התוכנה... Tera-Term יצירת תקשורת טורית לבדיקת המערכת באמצעות התוכנה... PuTTY יצירת תקשורת טורית עם... HyperTerminal יצירת תקשורת טורית בתוכנת... Labview תרגול... פרק 14: דוגמאות להרצת סימולציה לשאלות מה"ט בנושא... 8051 פתרון שאלה מס' 6 ממבחן מה"ט מועד מרץ... 05 פתרון שאלה מס' 6 ממבחן מה"ט מועד יולי... 05 פתרון שאלה מס' 6 ממבחן מה"ט מועד יולי... 06 פתרון שאלה מס' 6 ממבחן מה"ט מועד יולי... 07 פתרון שאלה מס' 6 ממבחן מה"ט מועד אביב 08... פתרון שאלה מס' 6 ממבחן מה"ט מועד יולי... 08 470 471 472 473 474 476 477 480 482 491 פרק :15 פרוטוקול... I2C פרוטוקול... I2C פעולות בסיסיות ברמת הביטים... הרגישות לתדרים ותזמונים של ה BUS... פעולת כתיבה וקריאה ברמת ה Bytes... רכיב... I2C-Master הסבר פונקציה START והרצת סימולציה... הסבר פונקציה STOP והרצת סימולציה... הסבר פונקציה WRITE והרצת סימולציה... הסבר פונקציה READ והרצת סימולציה... 8 תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי

500 501 501 502 502 503 503 504 504 508 509 519 520 521 522 523 524 525 528 530 534 543 546 547 549 550 553 556 557 558 559 559 559 560 560 561 567 567 567 567 567 סיכום תקשורת בפרוטוקול... I2C חיבור התקני I/O בעזרת רכיבים חיצונים למיקרו-בקר... חיבור בין המיקרו-בקר לרכיב... 8255 רכיב הרחבהPCF8574 הפועל בפרוטוקול... I2C מבנה של אריזת DIP של רכיב... PCF8574 מבנה פנימי של רכיב... PCF8574 פירוט הדקי אריזת DIP של רכיב... PCF8574 סכימת החיבור של לוח מקשים 4x4 ושמונה led's לרכיב הרחבה... הסבר תוכנית להפעלת שמונה LED's שחוברו לרכיב הרחבה... סכימת החיבור בין לוח התרגול לבין לוח Wire Wrap שמכיל רכיבי הרחבה סריקת לוח מקשים שמחובר לרכיב הרחבה... רכיב טמפרטורה TC74 הפועל בפרוטוקול... I2C רשימת רכיבים הפועלים בפרוטוקול... I2C תרגול... פרק 16: פרוטוקול...PS2 פרוטוקול... PS2 מבוא ונתונים על הממשק בין מקלדת PS/2 ו Host ברמת ה bit... בדיקת חיבור מקלדת ללוח התרגול... הסבר על פרוצדורה זיהוי מקש... שיטות לבדיקת זוגיות... מבוא לתשדורת של המקלדת ברמת ה - byte... טבלת המידע המשודר מהמקלדת ומקודד ב-... scan code תרגול... המרה מקוד scan code לקוד... ASCII טבלה המשמשת להמרה של אותיות קטנות ומספרים... טבלה המשמשת להמרה של אותיות גדולות ותווים lock)...(caps תוכנית להצגת אותיות ומספרים שנקלטים מהמקלדת על התצוגה... תרגול... פרק :17 פרוטוקול... SPI פרוטוקול... SPI מבנה התשדורת בפרוטוקול... הרגישות לתדרים ותזמונים של ה BUS... רכיב... SPI-Master צורת החיבור של Master אחד לכמה רכיבי... Slave פונקציה... SPI_WAIT פונקציה... read_write_spi חיבור זיכרון חיצוני הפועל בפרוטוקול...SPI רכיב זיכרון 25AA256 הפועל בפרוטוקול... SPI מבנה של אריזת DIP של רכיב... 25AA256 פירוט הדקי אריזת DIP של רכיב... 25AA256 טבלה המרכזת את הוראות הכתיבה והקריאה מרכיב הזיכרון... תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי 9

568 569 574 577 578 579 579 580 581 582 585 587 594 595 606 607 608 609 610 611 612 613 614 617 הסבר על תהליך הכתיבה... הסבר על תהליך הקריאה... דוגמא לתוכנית שמבצעות כתיבה וקריאה מרכיב זיכרון... 25AA256 סכימת החיבור בין לוח התרגול לרכיב הזיכרון... 25AA256 תרגיל מסכם... חיישן הטמפרטורה... LM74 רעיון לפרוייקט ב-... SPI פרק 18: שילוב בין כתיבה בשפת אסמבלי ושפת... C מבוא לשפת... C קבצי כותרת... כתיבת תוכנית למיקרו-בקר ממשפחת 8051 בשפת... C פקודות בסיסיות בשפת... C כללים לשילוב כתיבה בין שפת C לשפת אסמבלי... דוגמאות לתוכניות המשלבות קבצים הכתובים בשתי השפות... תרגיל מסכם... פרק 19: נספחים... טבלת ריכוז פקודות חשבוניות... טבלת ריכוז פקודות לוגיות... טבלת ריכוז פקודות השמה וטבלת ריכוז פקודות קפיצה... טבלת ריכוז פקודות השמה על משתנים מסוג... BIT טבלת כתובות הרגיסטרים... הבדלים בין מיקרו-בקר 8051 למיקרופרוססור... 8086 טבלת...ASCII צריבת כרטיס CRD2 (מיקרו-בקר...(P89V51RD2 10 תוכן עניינים- ספר לימוד מיקרו בקרים ממשפחת 8051 בשפת אסמבלי

הקדמה 11 הקדמה

טכנולוגיית הבקרים ממשפחת ה - 8051 ספר זה מתמקד במיקרו-בקרים ממשפחת ה - 8051 ובעיקר בנגזרות המודרניות שלו שנקראות 89C51. הנגזרות המודרניות של מעבד זה, מיוצרות כיום על יד חברות רבות, כגון:,Analog Devices,Oki,SST,Hynix,TDK,TI,Infineon,Philips,Dallas,Atmel Winbond,ST Microelectronics,ISSI,Cypress,Acer Lab והן גרסאות משופרות של הארכיטקטורה המקורית של חברת אינטל. בקרים אלו שימושיים בפרויקטים מעשיים רבים בתעשייה. מדובר באחד מהבקרים הנפוצים ביותר בתעשיית האלקטרוניקה! בספר זה, תלמד על הארכיטקטורה של בקרים אלו. כמו כן, הספר עוסק בהרחבה רבה בשפת האסמבלי של הבקר, שהיא זהה בכל הבקרים של המשפחה. למיקרו בקרים ממשפחת ה 8051 קיימות מערכות פיתוח Systems) (Development מאוד משוכללות, שרצות תחת.Windows מדובר בדרך כלל בסביבות עבודה שכוללות בתוכן באופן מובנה, מספר כלי תוכנה Environment) Integrated Design כ) גון:,Editor מערכת ניהול פרויקטים, תכנית אסמבלר, קומפיילר משפות גבוהות (כמו C), מקשר,(Linker) סימולאטור גרפי ומנפה שגיאות.(Debugger) כלים אלו מאפשרים לפתח פרויקטים מורכבים בזמן קצר יחסית, ועוזרים ללומד להכיר את הארכיטקטורה ושפת האסמבלי של הבקר הנלמד. מדובר בכלים של חברות כדוגמת:,SPJ Systems,Hi-Tech Software,Raisonance,Keil Avocet Systems,Crosssware,BiPOM Electronics וכלים דומים של חברות אחרות. לכלי תוכנה מסוג זה יש בדרך כלל גם גרסאות חופשיות מוקטנות או גרסאות מאוד מוזלות למוסדות לימוד. בדרך כלל הלומדים יכולים גם לתרגל בעצמם בבית באמצעות גרסאות מיוחדות לסטודנטים. ניתן למצוא באינטרנט גם מגוון כלי תוכנה נפרדים (כגון אסמבלר, קומפיילר, סימולטור), שהם חופשיים וניתנים להורדה (למשל: JSIM-,ASEM-51,SDCC 51,.(Crimson עבודה עם כלים נפרדים היא כמובן פחות נוחה. בספר זה בחרנו להתמקד בכלי הפיתוח μvision של חברת,Keil שנחשב לאחד מכלי הפיתוח החזקים ביותר והנפוצים ביותר בתעשייה. כל התרגילים בספר זה ניתנים להרצה באמצעות גרסת הסטודנטים של הכלי, שניתנת להורדה באתר הבא: www.keil.com/demo/eval/c51.htm למרות מה שנאמר כאן, גם לומדים שברשותם כלי פתוח אחרים יוכלו להפיק מספר זה תועלת רבה. פיתוח של פרויקטים עם בקרים משלב לעתים קרובות בין כתיבה בשפת אסמבלי ושפת C. ספר זה עוסק כאמור בעיקר בשפת האסמבלי. ספר נוסף שיתלווה לספר זה, הנקרא: "ספר לימוד מיקרו-בקרים ממשפחת 8051 לפרויקטים בשפת C", יעסוק בהרחבה רבה בלימוד השפה (C (Embedded ובפתוח פרויקטים בשפה זו. רכיבים ישנים של משפחת ה 8051 תוכנתו בעבר באמצעות צריבת רכיב זיכרון חיצוני מסוג EPROM ב. נגזרות המודרניות של רכיבים אלו, רכיבים המכילים באופן מובנה בתוכם זיכרון מסוג.Flash ניתן לצרוב רכיבים אלו באופן ישיר ובנוחות רבה - מבלי שיש צורך לשלוף אותם מהלוח. הספר מדגים שימוש בתוכנות צריבה Flash Magic של חברת Philips שניתן להורידה חינם באינטרנט. למרות הבחירה הנ"ל ניתן לצרוב רכיבים של חברות מקבילות באופן דומה. 12 הקדמה

ייעודו של הספר ספר זה הינו ספר מעשי ומטרתו העיקרית היא ללמד את שפת האסמבלי, ממשפחת מיקרו-בקרים 8051. כמו כן, ספר זה מקנה את הידע הדרוש להכנת פרויקט. יתרה מכך, ניתן להשתמש בדוגמאות ובקודים המוצגים בספר, לשם הכנת פרויקטים בתחום המיקרו- בקרים. הקניית הידע בספר זה מתבצעת על ידי תרגול מובנה, שנעשה הן באמצעות סימולציה והן באמצעות הרצה על לוח תרגול, תוך מתן הסברים רבים ודוגמאות. ספר זה יסייע להנדסאים ומהנדסים לבצע היכרות מעמיקה עם אחד מהמיקרו-בקרים, הנפוצים ביותר בתעשייה. הספר מתאים לשימוש כספר לימוד לסטודנטים במכללות של מה"ט ומשרד החינוך, במכללות אקדמיות ובאוניברסיטאות הן במעבדות והן מקצועות תיאורטיים. הקורא ייחשף בספר לנושאים מגוונים, כגון: מבנה הבסיסי של משפחת מיקרו-בקר 8051 ונגזרות מודרניות של 89C51. הכרת מערכת הפיתוח.μVision הכרת פקודות שפת האסמבלי וכתיבת תוכניות. יצירת פרויקט והירכייה. צריבת פרויקטים לכרטיס התרגול. כתיבת תוכניות שונות להפעלת נוריות.LED חיבור מתגים וקריאתם ומניעת ריטוטים. עבודה עם רכיבי זיכרון פנימיים של המיקרו-בקר. כתיבת פונקציות והגדרת מחסנית. כתיבה לתצוגת.LCD סריקת לוח מקשים (למשל לוח מקשים 4X4). עבודה עם פסיקות. הפעלת מונים ברי תכנות וטיימרים. עבודה עם תקשורת טורית והתחברות למחשב.PC כיצד ניתן לבצע סימולציה לשאלות של מה"ט בנושא 8051 פרוטוקול I2C ודוגמאות לרכיבים שונים כולל רכיבי הרחבה. התחברות למקלדת בפרוטוקול PS2 ודוגמאות לקריאת תווים מהמקלדת. פרוטוקול SPI ודוגמאות לכתיבה וקריאה מרכיבי זיכרון. שילוב בין כתיבה בשפת האסמבלי ושפת C. 13 הקדמה

מבנה הספר והמלצות ללומד הגישה המקובלת בקורסים רבים במיקרו-בקרים, במכללות ובאוניברסיטאות, היא לחשוף את הלומד לנושא זה, תחילה באמצעות שפת האסמבלי. תיאורים בשפת אסמבלי נחשבים לקרובים יותר לעולם החומרה (בהשוואה לתיאור בשפות גבוהות). לעומת זאת, פרויקטים שנעשים באופן מעשי באקדמיה ובתעשייה, נעשים בדרך כלל בשילוב בין שפת האסמבלי ושפת C או ++C. במלים אחרות, החשיפה לשפות הגבוהות נעשית בדרך כלל בשלב מאוחר יותר של הלימוד, כאשר הלומד נמצא בשלב פיתוח פרויקטים. בשלב זה, הלומד מכיר את יתרונותיהם של השפות הנ"ל. ספר זה עוסק בשפת האסמבלי ומציג גם את נושא השילוב עם שפת C בפרק 18 בלבד. לימוד מלא של כתיבת תוכניות בשפת C, יעשה כפי שנאמר קודם, בספר נוסף שנקרא "ספר לימוד מיקרו-בקרים ממשפחת 8051 לפרויקטים בשפת."C להלן רשימת הפרקים שבספר: מבוא. הכרת מערכת הפיתוח.µvision פקודות בסיסיות של המיקרו-בקר. פקודות קפיצה ולולאות. שימוש בפקודות לוגיות ועבודה עם סיביות. זיכרונות. מחסנית ופרוצדורות. חיבור מתגים למיקרו-בקר ומניעת ריטוטים. כתיבה לתצוגת.LCD חיבור לוח מקשים 4x4 למיקרו-בקר. עבודה עם פסיקות. הפעלת מונים ברי תכנות. עבודה עם תקשורת טורית והתחברות למחשב.PC דוגמאות להרצת סימולציה לשאלות מה"ט בנושא 8051. פרוטוקול.I2C פרוטוקול.PS2 פרוטוקול.SPI שילוב בין כתיבה בשפת אסמבלי ושפת C. נספחים..1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19 14 הקדמה

בפרק 1, נעשית היכרות בסיסית עם החומרה של המיקרו בקר. בפרק זה תלמד כיצד בנוי הבקר באופן פנימי וכיצד מחברים אותו לרכיבים חיצוניים. כמו כן, בפרק זה תכיר כמה מההבדלים הקיימים בין המשפחות של 8051 ו- 89C51. בפרק 2, תבצע היכרות בסיסית עם מערכת הפיתוח.μVision הפרק דן בכמה מהיכולות המרכזיות של מערכת הפיתוח כגון: פתיחת פרויקט, כתיבה עם עורך טכסטים, קומפילציה, סימולציה, יצירת קובץ לצריבה. בנוסף לכך פרק זה עוסק בהכרת המבנה הבסיסי של תכנית בשפת האסמבלי. פרק 3 עוסק בהכרת פקודות בסיסיות של המיקרו-בקר. פקודות אלו יאפשרו לך לכתוב תוכניות מורכבות יותר מזו שכתבת בפרק 2. בפרק זה תכיר פקודות השמה, ופעולת חשבוניות כגון: MUL,DEC,INC,SUBB,ADDC,ADD,CLR,SETB,MOV ו-.DIV פרק 4 עוסק בפקודות קפיצה ובלולאות. בפרק זה גם תלמד כיצד ניתן להגדיר תווית.(Lable) בנוסף לכך תכיר פקודות כגון: DJNZ,CJNE,JNC,JC,JNZ,JZ,LJMP,SJMP,JMP פקודות אלו יסיעו לך ליצור לולאות ולכתוב תוכניות יותר מורכבות ויעילות. פרק 5 מחולק לארבעה חלקים: בחלק הראשון של הפרק תלמד פקודות לוגיות ופקודות הזזה כגון: XRL, ANL, ORL, CPL, SWAP, DA, RL, RLC, RRL, RR, RRC החלק השני של הפרק עוסק בעבודה עם בנקים (Banks) שונים. בחלק זה תלמד על מבנה הבנקים בזיכרון וחשיבותם וכיצד ניתן לשלבם בכתיבת תוכניות. החלק השלישי בפרק עוסק בפקודות המטפלות בסיביות Bits) ( בודדות. בחלק זה תלמד כיצד ניתן לפנות לסיבית מסוימת מרגיסטר ACC או מפרוט מסוים. כמו כן, תלמד כיצד ניתן ליצור לולאות המושפעות מסיביות. בנוסף לכך חלק זה מבצע הכרות עם כלי מאוד חשוב של תוכנת ה µvision מ. דובר ב Analyzer Logic פנימי שמובנה בכלי הפתוח. כלי זה מאפשר לסמלץ תכניות מורכות יותר, כולל בדיקה של זמני הבצוע. בחלק הרביעי של הפרק נלמד כיצד להשתמש בתוכנת הצריבה Flash Magic של חברת,Philips לשם צריבת פרויקט ללוח התרגול. פרק 6 עוסק בזיכרונות של המיקרו בקר. בפרק זה תכיר את מבנה הזיכרון של הבקר ותלמד כיצד ניתן להגדיר ולקרוא נתונים מזיכרון ה-.ROM בנוסף, תלמד כיצד ניתן להגדיר, לכתוב ולקרוא נתונים בזיכרון RAM פנימי וזיכרון RAM חיצוני. כמו כן, פרק זה עוסק בהגדרת משתנים מסוג Bit בזיכרון ה- RAM. בנוסף לכך, תלמד בפרק זה על שיטות מיעון ישיר ועקיף, שיטת מיון בועות ושימוש במצביעים. פרק 7 עוסק במחסנית ובכתיבת פרוצדורות. השימוש בפרוצדורות מאפשר לכתוב תוכנית מודולרית. המחסנית היא המרכיב המרכזי בחומרה שמאפשר להשתמש בפרוצדורות. החלק שעוסק במחסנית דן במבנה המחסנית וכיצד ניתן להשתמש בה בצורה יעילה. בחלק שעוסק בפרוצדורות תלמד גם כיצד ניתן להגדיר ולכתוב פרוצדורות ומשתנים בקובץ משותף ובקבצים נפרדים. בנוסף לכך תכיר מספר פקודות חשובות, בהן: PUSH, POP, RET, CALL, ACALL, LCALL, PUBLIC, EXTRN 15 הקדמה

פרק 8 עוסק בחיבור מתגים, ככניסות המאפשרות שליטה של המשתמש על הפרויקט. מתגים אלו הם מכניים, לכן בכל שינוי של מצב המתג מתרחשת תופעה של ריטוטים. ריטוטים אלו משנים את מצב המתג מפתוח לסגור ומסגור לפתוח לסירוגין, מספר לא ידוע ולא קבוע של פעמים למשך זמן קצר ולא קבוע. בפרק זה, תכיר טכניקות שימושיות למניעת ריטוטים, שבהם תוכל להשתמש בפרויקטים. פרק 9 עוסק בתצוגת.LCD זוהי אחת מהתצוגות הנפוצות ביותר בפרויקטים שנעשים עם מיקרו בקרים. בפרק זה תכיר את הדקי התצוגה ואופן פעולתם. בנוסף לכך פרק זה בונה מערכת של פונקציות סטנדרטיות שיאפשרו לך במהלך לימוד הספר לכתוב לתצוגה בצורה קלה ונוחה. פונקציות אלו כוללות פעולות כגון: אתחול התצוגה, כתיבת תו, מחיקת תו, ניקוי מסך התצוגה, הצגת הסמן, הבהוב הסמן, הפעלה וכיבוי של המסך, העברת הסמן לתחילת התצוגה, העברת הסמן לשורה השנייה, הזזת סמן התצוגה אחורה, הזזת סמן התצוגה קדימה, הורדת הסמן לשורה השנייה תוך שמירה על מיקום הסמן והעברת הסמן לשורה הראשונה תוך שמירה על מיקום הסמן. לימוד השימוש בפונקציות מתבצע על ידי הסבר וצריבת תוכניות לדוגמא על לוח התרגול. פרק 10 עוסק בחיבור לוח מקשים 4x4 למיקרו-בקר. חיבור זה יאפשר לך למשל, ליצור תפריטים שונים בפרויקטים. בפרק זה נראה כיצד ניתן לכתוב תוכניות אשר יבצעו סריקה של לוח המקשים בשיטת אפס רץ. לימוד השיטה יעשה על ידי הסברים וסימולציה בתוכנת μvision ה. פרק כולל גם דוגמאות לתוכניות שונות, המופעלות בעזרת לוח מקשים והן כמובן ניתנות לצריבה על גבי לוח התרגול. פרק 11 עוסק בפסיקות חומרה. פסיקה בחומרה היא פסיקה אשר מגיעה מחוץ למיקרו-בקר, כלומר מרכיב חיצוני. ישנן שתי שיטות בעזרתן המיקרו קורא רכיב פריפריאלי: שיטה אחת נקראת סריקה והשיטה השנייה נקראת פסיקה. בשיטת הסריקה, המיקרו-בקר יוזם את הפנייה אל התקן ושואל האם הוא צריך שירות (כפי שנלמד בפרק 10). בשיטת הפסיקה, ההתקן יוזם את הפנייה למיקרו-בקר ומבקש שירות. בפרק, תלמד כיצד ניתן לאפשר פסיקות חיצוניות על ידי אפשור הרגיסטרים IE ו-.TCON בנוסף, תלמד כיצד לכתוב שגרת פסיקה בקובץ משותף ובקובץ נפרד וכיצד ניתן לסמלץ תוכניות הכוללות פסיקות חיצוניות. כמובן שגם פרק זה כולל תוכניות שניתנות לסימולציה ולצריבה על גבי לוח התרגול. פרק 12 עוסק במונים/טיימרים ברי תכנות. למיקרו בקר 89C51 ישנם שלושה מונים אשר יכולים לשמש כמונים לספירת מאורעות או כקוצבי זמן.(timer) בפרק זה נעסוק בשני מונים: מונה 0 ומונה 1. כמו כן, תלמד על מבנה המונה ו- mode (אופן עבודתו). בנוסף לכך, תלמד כיצד ניתן לאתחל את הרגיסטרים של המונה TMOD) ו- ( TCON ליצירת השהיות, בדיקת ההשהיות בזמן הרצת הסימולציה בחלון logic Analyzer ואפשור שגרת פסיקה של מונים. כמובן שגם פרק זה כולל תוכניות שניתנות לסימולציה ולצריבה על גבי לוח התרגול. 16 הקדמה

פרק 13 עוסק בתקשורת טורית. בפרק זה, תכיר מושגים בסיסיים בתקשורת הטורית כגון: Stop Bit,Start Bit,Baud Rate וכו'.. כמו כן, בפרק זה תלמד את אופן ביצוע התקשורת הטורית עם הבקר, תכיר את הרגיסטרים שמעורבים בתקשורות. פרק זה יאפשר לך למשל, לחבר את המערכת שלך למחשב.PC באופן כזה תוכל ליצור פרויקטים מעניינים ושימושיים יותר. בדיקת התקשורת הטורית תיעשה באמצעות תוכניות Terminal Emulator נפוצים, כמו Tera-Term,Hyperterm או.PuTTY בפרק זה גם נדגים כיצד ניתן לבצע תקשורת טורית עם!LabView פרק 14 מציג כמה דוגמאות להרצת סימולציה לשאלות של מה"ט בנושא 8051. הפתרונות כוללים תשובות לסעיפים השונים של השאלה, כפי שנדרש במבחן. פרק 15 עוסק בפרוטוקול.I2C פרוטוקול זה מאוד נפוץ בשימוש במיקרו בקרים היות והוא מאפשר לחבר מספר גדול של רכיבים מבלי לבזבז הדקי I/O רבים. בפרק זה נסביר כיצד ניתן ליצור פונקציות סטנדרטיות לכתיבה וקריאה בפרוטוקול הנ"ל. פונקציות אלו יאפשרו לך לחבר כל רכיב שמופעל בפרוטוקול זה בנוחות רבה. בנוסף לכך, נסביר בצורה רחבה על שימוש ברכיב ההרחבה PCF8574 שממיר בין פרוטוקול טורי זה להדקי I/O במקביל. בנוסף לכך, נדגים למשל כיצד ניתן לחבר שמונה נוריות LED בעזרת רכיב הרחבה בפרוטוקול I2C וכיצד ניתן אף לחבר לוח מקשים בעזרת רכיב ההרחבה הנ"ל. פרק 16 עוסק בחיבור מקלדת PS2 ללוח התרגול. בהשוואה ללוחות מקשים שכמותם הכרת בפרק 10 מקלדות PS/2 (מקלדות של מחשבי (PC הן מאוד עשירות במקשים למרות שעלותן אינה גבוהה. שימוש במקלדות אלו בפרויקטים, יפתח בפניך מגוון עצום של אפשרויות. בפרק זה מודגמת פרוצדורה נוחה לשימוש לקריאת תווים מהמקלדת ותאפשר לך לשלב אותה בפרויקטים. פרק 17 עוסק בפרוטוקול.SPI פרוטוקול זה נפוץ מאוד בשימוש במיקרו בקרים היות והוא מאפשר לחבר מספר גדול של רכיבים מבלי לבזבז הדקי I/O רבים. בפרק זה נסביר כיצד ניתן ליצור פונקציות סטנדרטיות לכתיבה וקריאה בפרוטוקול הנ"ל. פונקציות אלו יאפשרו לך לחבר כל רכיב שמופעל בפרוטוקול זה בנוחות רבה. בנוסף לכך, בפרק זה נדגים כיצד ניתן לכתוב לזיכרון ולקרוא מזיכרון EEPROM בעזרת שימוש בפרוטוקול.SPI לצורך הדגמה, בחרנו ברכיב זיכרון 25AA256 של חברת.Microchip פרק 18 עוסק בשילוב בין כתיבה בשפת אסמבלי ושפת C. בתחילת הפרק נדגים כיצד ניתן לכתוב תוכניות בסיסיות בשפת C. בהמשך פרק זה, נלמד כיצד ניתן לשלב בין שתי השפות תוך מתן הסברים ודוגמאות לפרויקטים אשר ניתנים לצריבה על גבי לוח התרגול. כאשר אנו עובדים באופן משולב בין שתי השפות אנו נהנים משני העולמות. קטעי קוד בהם יש חשיבות למהירות הביצוע או גודל התוכנית, יכתבו בשפת האסמבלי. קטעי קוד מסובכים יוכלו להיכתב בשפת C. פרק 19 כולל טבלאות שמרכזות את כל פקודות האסמבלי של הבקר, טבלת ASCII והסבר כיצד ניתן לצרוב לוח תרגול CRD2 של חברת "שיא מערכות". 17 הקדמה

תודות ברצוני להודות לאנשים הבאים, שקראו חלקים שונים מהטכסט והעירו הערות מועילות: מיכאל נייש, כפיר שוויקי, טל משה, נמרוד כהן ג'מילה, מורן שני, אמיר סוטי, עדי זוארץ, פבל קוצ רז וק, בידס עלא, בידס תאמר, תומר הרן, אייל בראונשטיין, אסאד אבו חאטום, בשארה עוייד, אירינה קולקוב, ילנה רובינוביץ', ארתור לדז'נסקי, גיא קדוש, יפתח אברהם, יצחק אברמוב, עבד אלמונעם זועבי, מחמוד זועבי, מוחמד חביבאללה, חביב ג'ובראן, חן לוי, אלזיר פאדי, נסראלדין פרג', אלכסיי זמליאנסקיך, פלדמן פבל, קרן ברקו, ג'ויסי סמואל, דיאנה מושאילוב, חן טורג'מן ודקלה לבקוביץ. כמו כן תודה מיוחדת מגיעה לאנשים הבאים: עדי בראל, יסמין קדארי, עומרי אגוזי ורועי זנו שהעירו הערות בונות רבות ואף הציעו הצעות רבות לשיפורים. כמון כן תודה מיוחדת מגיעה לאנשים הבאים: לעתליה זיו, לאוריין אדרי, ליז מלול וחברי הטוב אורן חן, שעזרו במלאכת הניסוח. תודה נוספת מגיעה לאנשים המצוינים ובעיקר לצוות הפיתוח של חברת "שיא מערכות", שהיא יצרנית של לוח התרגול המעולה שמלווה את הספר. לוח זה הופך את הלימוד בספר לחווייתי ומעניין יותר ללומד. תודה לחברת א.צ אורקול על התמיכה והעזרה בפיתוח פרויקטים. תודה לחברת EG-Tech ובמיוחד לארז, על התמיכה ורכיבי החומרה הרבים שעזרו לפתח ולדבג חלקים גדולים מהקודים (בעיקר אלו שקשורים לפרוטוקולים השונים) בפרויקטים מעשיים רבים. תודה מיוחדת מגיעה גם למיכאל ארבל,לאבינועם קרומהולץ, יעקב מלול וראובן מלכה על העזרה המקצועית הרבה שלהם בבניית חומרה לפרויקטים ובעבודת הדיבוג החומרה שעשו לחלק מהפרויקטים. תמיכה זו אפשרה לפתח את הספר במהירות וביעילות רבה יותר. תודה מיוחדת מגיעה למיכאל קונגה (שהוא מרצה מצוין ומחבר של ספר בנושא מבנה מיקרו מחשבים) על כך שערך לי היכרות עם העולם המרתק של מיקרופרוססורים. תודה מיוחדת ליאן לרון שהוא כותב ספרים פורה בפני עצמו (שהוציא לאחרונה גם ספר בלתי רגיל בנושא SPICE ועומד להוציא את הספר האולטימטיבי בנושא בקרה). תודה על ההשראה והמוטיבציה לכתיבה של ספרים ועל העזרה הרבה בשילוב תכנת LabView בפרויקטים. המון תודות מגיעות גם לערן סקלי. תודות על: היעוץ המקצועי בכתיבת קודים, היעוץ המקצועי בכתיבת הספר, העזרה העצומה בדיבוג, הרעיונות המקוריים לפרויקטים וכמובן גם על העידוד. המון תודות מגיעות גם לאיש היקר מר עמוס זסלבסקי, תודות על: היעוץ, ההכוונה והמעורבות במהלך כתיבת הספר. העזרה העצומה במציאת הרעיונות המקוריים לכתיבה. עמוס, תודה על הסבלנות, ההקשבה וכמובן גם על העידוד. אני מאחל לך הצלחה בשני ספריך המצוינים בנושאי שפת VHDL ותכן ספרתי עם רכיבי.Altera 18 הקדמה

תודות רבות מגיעות לסטודנטים הרבים מבית הספר הארצי להנדסאים שהשתתפו בקורסים בנושא 8051 שהעברתי במעבדות במכללה. המשוב המועיל שקיבלתי מסטודנטים אלו סייע לי לשפר את איכות ההסברים שלי. כמו כן מגיעות תודות גם לקבוצות הפרויקטים הרבות שהנחתי במכללה זו. פרוייקטנטים רבים עזרו לדבג חלק מהקודים בספר ובעיקר אלו שקשורים לפרוטוקולים השונים. תודה אחרונה מגיע גם למוציא לאור: אלי מיטב על האמון וגם על הסבלנות. המלצות ללומד קיימת תלות חזקה בין פרקי הספר השונים עד לפרק 13. כלומר בכל הפרקים הללו מניחים שהקורא כבר מכיר את הפרקים הקודמים. לכן, מומלץ שהלומדים לא ידלגו על הנושאים השונים במהלך הלימוד של פרקים אלו. בפרקים המתקדמים קיימת תלות נמוכה יותר בין הפרקים וניתן לבחור בפרק הרצוי בהתאם לסוגי הפרוטוקולים שמעניינים את הקורא. למרות שבספר מוצגות דוגמאות קוד רבות שהן מוסברות היטב ושהן מלוות בתוצאות של הסימולציה, מומלץ מאוד שלא להסתמך בתהליך הלימוד על קריאה בלבד. במלים אחרות כדאי מאוד להריץ את הקודים בסימולציה וכן מומלץ גם לבצע הרצה על חומרה אמיתית! חשוב לדעת, שניתן להוריד קודים רבים וקבצי עזר שונים מאתר אינטרנט של המחבר. כדאי לבדוק מדי פעם באתר זה לגבי עדכונים (למשל נושאים נוספים שלא נכללו בספר, רעיונות לפרויקטים ועוד..). להלן כתובת האתר www.shai.eguru-il.com אני מאחל לכל הקוראים קריאה מועילה ולא פחות חשוב מכך - הנאה וסיפוק בהפנמה של לימוד המעבד והשפה שלו והצלחה בפתוח פרויקטים. תוכן הספר עבר דיבוג אינטנסיבי על ידי מספר רב של קוראים. למרות כל המאמצים שלי בכתיבת הספר ולמרות המשוב המועיל הרב של האנשים המצוינים שהעירו לי הערות ותיקנו שגיאות בגרסאות השונות של הספר, עדיין עלולות להיות בספר זה טעויות והן כמובן כולן באחריותי הבלעדית וכמובן איני חולק אחריות זו עם אחרים. אודה לכל מי שישלח לי הערות בקשר לטעויות שכאלה או לכל מי שיצביע על בעיות כלשהן בהבנה של הטכסט או יציע לי הערות בונות כל שהן. כל הערה קטנה כגדולה, תתקבל על ידי בברכה. ליצירת קשר ניתן להשתמש בכתובת הדואר האלקטרוניות הבאות: הספר מוקדש למשפחתי היקרה. shai@eguru-il.com 19 הקדמה